#! /bin/bash
# 说明：部署StayLifeServer目到生产服

# 源码目录
SRC_CODE_DIR=/silver/git_source/69night

# 备份配置目录
SRC_CONF_DIR=/silver/confs/69night

# 目标目录（干净的目录）
TARGET_DIR=/home/wwwroot/staylife-server

# Web服务器列表
SERVER_LIST='10.117.38.193'

echo '确定要部署StayLifeServer（api.staylife.cn）？(y/n)'

read answer
if [ $answer = "y" ]; then

    cd $SRC_CODE_DIR

    # 还原配置目录
    git checkout admin/conf
    git checkout balloon/conf

    # 拉取最新代码
    git checkout master
    git pull origin master

    # 打包压缩JS/CSS等资源
    /usr/bin/php balloon/packer.php

    \cp -R $SRC_CONF_DIR/* ./

    # 使用『Stay生活家』的微信配置文件
    \cp -R balloon/conf/product/staylife/* balloon/conf/product/

    # 开始部署
    for server in $SERVER_LIST
    do
        # 同步代码到目标服务器
        rsync --delete --exclude='.git*' --exclude='.user.ini' --exclude='web/html' --exclude='balloon/modules/Test' -r -t -v --progress $SRC_CODE_DIR/ root@$server:$TARGET_DIR
        ssh root@$server "/etc/init.d/php-fpm reload"
    done

    # 额外同步到本机（预生产）
    rsync --delete --exclude='.git*' --exclude='.user.ini' --exclude='admin/web/ueditor' -r -t -v --progress $SRC_CODE_DIR/ $TARGET_DIR
    /etc/init.d/php-fpm reload

    # AdminCP 的上传目录权限
    mkdir -m 777 -p $TARGET_DIR/admin/web/ueditor

fi